// pages/collect/index.js
Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		result: [],
		collectList: [],
		checkboxShow: false,
		btnShow: true,
		checkedAll: false
	},
	// 纯数据字段
	pageIndex: 1,
	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad(options) {
		this.getCollectionList()
	},
	/**
	 * 商品收藏列表
	 */
	getCollectionList() {
		let {
			collectList
		} = this.data
		wx.http.get(wx.api.GetCollectionList, {
			page: this.pageIndex,
			limit: 15
		}).then(res => {
			if (res.code == 1) {
				let list = res.data.data.map(t => Object.assign(t, {
					imageurl: `${wx.api.host}/${t.imageurl}`
				}))
				this.setData({
					collectList: collectList.concat(list)
				})
			}
		})
	},
	/**
	 * 单选框切换
	 */
	onChange(event) {
		let {
			collectList
		} = this.data
		let result = event.detail
		collectList = collectList.map(t => ({
			...t,
			checked: result.some(m => m == t.product_id)
		}))
		this.setData({
			result,
			collectList,
			checkedAll: result.length == collectList.length
		});
	},
	/**
	 * 点击批量删除
	 */
	onBatchDel() {
		let swipeCell = this.selectAllComponents('#swipe-cell')
		swipeCell.forEach(t => t.close())
		this.setData({
			checkboxShow: true
		})
	},
	/**
	 * 滑动打开
	 */
	// onOpen(e) {
	// 	let {
	// 		name
	// 	} = e.detail
	// 	let {
	// 		collectList
	// 	} = this.data
	// 	console.log('打赏', e.detail.instance);
	// 	collectList = collectList.map(t => ({
	// 		...t,
	// 		btnShow: name == t.product_id
	// 	}))
	// 	console.log('打开', collectList);
	// 	this.setData({
	// 		collectList
	// 	})
	// },
	/**
	 * 滑动关闭
	 */
	onCancelCollect(e) {
		let {
			collectList
		} = this.data
		let {
			id
		} = e.currentTarget.dataset
		console.log('关闭', id, e);
		this.delCollections([id])
	},
	delCollections(ids) {
		let {
			collectList
		} = this.data
		wx.showModal({
			content: '确定删除已选商品？',
		}).then((res) => {
			if (res.confirm) {
				return wx.http.post(wx.api.DelCollections, {
					ids: ids.join(',')
				})
			}
		}).then(res => {
			console.log(res);
			if (res.code == 1) {
				wx.showToast({
					title: '取消成功',
					icon: 'success'
				})
				this.setData({
					checkboxShow: false,
					collectList: collectList.filter(t => !ids.some(m => m == t.product_id))
				})
			}
		})
	},
	/**
	 * 全选
	 */
	onCheckboxAllChange() {
		let {
			checkedAll,
			collectList
		} = this.data
		this.setData({
			checkedAll: !checkedAll,
			collectList: collectList.map(t => ({
				...t,
				checked: !checkedAll
			}))
		})
		console.log(collectList);
	},
	/**
	 * 取消批量
	 */
	onCancelAll() {
		this.setData({
			checkboxShow: false
		})
	},
	/**
	 * 批量删除
	 */
	onBatchCancel() {
		this.delCollections(this.data.result)
	},
	/**
	 * 生命周期函数--监听页面初次渲染完成
	 */
	onReady() {

	},

	/**
	 * 生命周期函数--监听页面显示
	 */
	onShow() {

	},

	/**
	 * 生命周期函数--监听页面隐藏
	 */
	onHide() {

	},

	/**
	 * 生命周期函数--监听页面卸载
	 */
	onUnload() {

	},

	/**
	 * 页面相关事件处理函数--监听用户下拉动作
	 */
	onPullDownRefresh() {

	},

	/**
	 * 页面上拉触底事件的处理函数
	 */
	onReachBottom() {
		this.pageIndex += 1
		this.getCollectionList()
	},

	/**
	 * 用户点击右上角分享
	 */
	onShareAppMessage() {

	}
})